import sys
sys.path.append('..')
from data.model.metrics import TRAINING_METRICS, VALIDATION_METRICS, FEATURES_IMPORTANCES
from data.labeled.preprocessed import RISKS_MAPPING as risks
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
for risk, importance in FEATURES_IMPORTANCES.items():
print(f"Risk: {risks[risk]}")
plt.figure(figsize=[5,5])
importance.sort_values(ascending=True).plot.barh()
plt.show()
for risk,metrics in TRAINING_METRICS.items():
print('Risk:', risks[risk])
print("Confusion Matrix:")
plt.figure()
sns.heatmap(metrics['confusion_matrix'], annot=True)
plt.show()
print("Regression Report")
display(pd.DataFrame([metrics['regression_report']]))
print("Classification Report")
display(pd.DataFrame(metrics['classification_report']))
import seaborn as sns
for risk,metrics in VALIDATION_METRICS.items():
print('Risk:', risks[risk])
print("Confusion Matrix:")
plt.figure()
sns.heatmap(metrics['confusion_matrix'], annot=True)
plt.show()
print("Regression Report")
display(pd.DataFrame([metrics['regression_report']]))
print("Classification Report")
display(pd.DataFrame(metrics['classification_report']))
training_mse = pd.Series({risks[risk]: metric['regression_report']['MSE'] for risk,metric in TRAINING_METRICS.items()})
display(training_mse)
training_mse.describe()
valid_mse = pd.Series({risks[risk]: metric['regression_report']['MSE'] for risk,metric in VALIDATION_METRICS.items()})
display(valid_mse)
valid_mse.describe()